package com.hst.capacity.application.biz;

import com.hst.capacity.domain.model.entity.setting.line.CityLineScopeEntity;
import com.hst.capacity.domain.model.entity.setting.station.ApplyStationEntity;
import com.hst.capacity.domain.model.entity.setting.station.StationEntity;
import com.hst.capacity.domain.model.entity.setting.station.SysRegionEntity;
import com.hst.capacity.domain.model.request.franchisee.FranchiseeSaveParam;
import com.hst.capacity.domain.model.response.franchisee.FranchiseRegionCodeVO;
import com.hst.capacity.domain.model.response.franchisee.FranchiseeSelectVO;
import com.hst.capacity.domain.model.response.setting.AirportVO;
import com.hst.capacity.domain.model.response.setting.BusStationVO;
import com.hst.capacity.domain.model.response.setting.RailStationVO;
import com.hst.capacity.domain.model.response.setting.station.ProvinceVO;
import com.hst.capacity.domain.model.response.setting.station.SysRegionVO;

import java.util.List;

public interface RegionBiz {

    List<FranchiseRegionCodeVO> findRegionCodeByIdFranchisee(String idFranchisee);

    List<StationEntity> getInnercityStationByCode(String code);

    List<StationEntity> getIntercityStationByCode(String code);

    List<StationEntity> getInnerCityStationByCode(String stationRegionCode,String regionCode);

    List<StationEntity> getInterCityStationByCode(String stationRegionCode,String regionCode);

    FranchiseeSelectVO select(String idFranchisee);

    String save(FranchiseeSaveParam param);

    SysRegionVO getRegionListByCityCode(String cityCode);

    List<SysRegionEntity> findRegionByCityCode(String cityCode);

    List<ProvinceVO> getAllRegionList();

    List<ProvinceVO> getRegionList(String citycode);

    List<AirportVO> getAirportByCityCode(String cityCode);

    List<RailStationVO> getRailStationByCityCode(String cityCode);

    List<BusStationVO> getBusStationByCityCode(String cityCode);

    List<CityLineScopeEntity> getCityLineScopeList(String cityCode);

}
